`timescale 1ns / 1ps
//////////////////////////////////////////////////////////////////////////////////
// Company: 
// Engineer: 
// 
// Create Date: 2023/12/20 14:06:44
// Design Name: 
// Module Name: EXT
// Project Name: 
// Target Devices: 
// Tool Versions: 
// Description: 
// 
// Dependencies: 
// 
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
// 
//////////////////////////////////////////////////////////////////////////////////

module EXT #(parameter WIDTH = 16)(
input [WIDTH-1:0] in,
input sign,
input ena,
output [31:0] out
);
assign out=ena?(sign? {{(32-WIDTH){in[WIDTH-1]}},in} : {{(32-WIDTH){1'b0}},in}) : 32'bz;
endmodule
